Simulated Annealing (SA) is a popular global optimization method. Unfortunately, there are two difficulties are associated with SA. First, the search process is memory-less and therefore cannot avoid revisiting regions that are less likely to contain a global minimum. Second, the randomness in generating a new trial does not utilize the information gained during the search and therefore, the search cannot be guided to more promising regions. Accordingly, there is a need in the art to develop a global minimization method that overcomes these two difficulties.